import Vue from 'vue'
import Vuex from 'vuex'
import state from './state'
import getters from './getters'
import mutations from './mutations'
import actions from './actions'
//  使用vuex 插件
Vue.use(Vuex)
//  组件中使用，this.$store
// this.$store.state
//  为什么每个组件实例中都可以使用，因为调用插件的时候
// 每个组件实例都放进去了，，我猜应该用来一种设计模式，$store绑定在Vue的原型上
//  感觉这他妈就是发布订阅模式啊

//state,是加载缓存里面的数据或者定死默认数据
// mutations用来更新state的数据和缓存里面的数据<

//getters是为了复用代码的，多个组件需要用到同一个修改后的数据，就放在getter
export default new Vuex.Store({
  state,
  getters,
  mutations,
  actions
})
